3 Effect of stream and year on the somatic-to-otolith size relationship of Juvenile Brook Trout (Salvelinus fontinalis).
4 Introduction
Otoliths are tiny, calcified structures found in a fish’s head that aid orientation and hearing (Campana and Neilson 1985). In addition to their biological role, Otoliths serve as valuable resources for fisheries biologists and managers, enabling them to reconstruct the life history of individual fish. When viewed under a microscope, the otolith looks like a tree stump with individual rings corresponding to the years the fish has been alive. Upon closer inspection, one notices that the large yearly rings are composed of smaller daily rings. Both yearly and daily rings allow managers and scientists to gather information on birth date (Campana and Neilson 1985), environmental water chemistry (Høie, Otterlei, and Folkvord 2004; Radtke et al. 1996), metabolic rate, and even size at age estimates [ Ashworth (2017) ; Campana (1990) ; Vigliola and Meekan (2009)]. Size at age estimates is valuable information because they have many applications. For example, knowing cod’s otolith age/size relationship can prohibit fishermen from harvesting the most fecund age/size class in this species. (Høie, Otterlei, and Folkvord 2004; Anderson, Claiborne, and Smith 2023)
Although back-calculation is widely used to estimate past sizes at a given age, three assumptions must be met. First, an annual or daily rate of ring deposition that does not vary; second, increments can be read precisely and accurately; and third, a relationship between increment spacing and somatic growth is usually measured in body size (Campana 1990; Vigliola and Meekan 2009). The first two assumptions are met through ring formation rate and reader evaluations; however, the third requires further analysis because of the possibility of somatic growth uncoupling from otolith ring deposition, leading to either underestimation or overestimating body size (Campana 1990; Vigliola and Meekan 2009). This can happen either because of a “growth effect,” where the otolith of slow-growing fish is larger at a given size than that of fast-growing fish, or an “age effect,” where the deposition of daily rings occurs despite fluctuations in somatic growth (Vigliola and Meekan 2009). Therefore, a way to overcome this needs to be established [(Covich, Crowl, and Heartsill-Scalley 2006)
Several methodologies have been used to account for the age and growth effect of the relationship between otolith and fish size. The Frasher Lee methodology attempted to account for the age/growth effect by assuming that if the otolith was 10% larger than the mean size, the fish must be 10% larger than the others [Vigliola and Meekan (2009)][.] Campana (1990) introduced a modification known as the biological intercept method, which posited that the fish had a specific size when the otolith measured zero, which was integrated with the proportionality concept of the Frasher-Lee equation. Additionally, other methods have utilized temperature to clarify the relationship (Mosegaard, Svedäng, and Taberman 1988; Shafer 2000). Using developmental temperature as a proxy; I propose to build upon past work and test the relationship between juvenile brook trout otolith and fish size.
4.1 Questions
Is there a linear relationship between Brook Trout YOY body size measured in fork length (mm) and otolith radius (um)?
With the addition of stream and year sampled covariates, can we make better Fork Length predictions using measured Otolith Radius (um)
5 Methods
5.1 Variables
Fork Length - Continuous Response
Otolith Radius - Continuous Predictor
Stream - Categorical Predictor (Covariate)
Year Sampled (Cohort) - Categorical Predictor (Covariate)
5.2 Data Collection
5.2.1 Field
5.2.2 Lab (Otolith Analysis)
- A sagittal otolith is divided into four quadrants.
- Posterior-Ventral
- Posterior-Dorsal
- Anterior-Ventral
- Anterior-Dorsal
- Otolith Radius was measured along a 45 degree angle in the Posterior-Dorsal Quadrant
- Starting at the Posterior most primordia of the primordium.
- Ending at the edge of the Otolith.
5.3 Data Analysis
5.3.1 Graphs
- Density plot of otolith radius is a gamma distribution because it is rightly skewed, non negative interegers and non
Code
streamFishOtolithKey %>% select(river, yearSampled, radius) %>% na.omit() %>% group_by(yearSampled) %>% summarise( count = n() )# A tibble: 2 × 2
yearSampled count
<dbl> <int>
1 2014 153
2 2015 156
Code
streamFishOtolithKey %>% select(river, yearSampled, radius) %>% na.omit() %>% group_by( river) %>% summarise( count = n() )# A tibble: 5 × 2
river count
<chr> <int>
1 Obear Brook 63
2 Pond Brook 53
3 Roaring Brook 76
4 Sanderson Brook 37
5 West Whately Brook 80
5.4 Model Assumptions
p value > 0.05, some col linearity in the data
Fisher's Exact Test for Count Data with simulated p-value (based on
10000 replicates)
data: t_soil_vil
p-value = 0.0021
alternative hypothesis: two.sided
5.5 Model Fitting
Model Assumptions of Collinearity and Linearity were met.
I will use a gamma distribution because density plots indicate data is non-negative, rightly skewed and non-integers.
5.5.1 Linear Regression
Call:
glm(formula = forkLength ~ radius, family = Gamma(link = "log"),
data = streamFishOtolithKey)
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2.883e+00 2.000e-02 144.12 <2e-16 ***
radius 2.486e-03 5.109e-05 48.66 <2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
(Dispersion parameter for Gamma family taken to be 0.0247221)
Null deviance: 63.3337 on 308 degrees of freedom
Residual deviance: 7.4672 on 307 degrees of freedom
(387 observations deleted due to missingness)
AIC: 2045.7
Number of Fisher Scoring iterations: 4
Call:
lm(formula = forkLength ~ radius * river * yearSampled, data = streamNew)
Residuals:
Min 1Q Median 3Q Max
-18.7417 -3.7079 -0.2308 3.3127 19.2968
Coefficients:
Estimate Std. Error t value
(Intercept) -3.145e+03 6.588e+03 -0.477
radius 4.527e+00 1.703e+01 0.266
riverWest Whately Brook -2.259e+04 1.257e+04 -1.797
yearSampled 1.565e+00 3.271e+00 0.478
radius:riverWest Whately Brook 5.288e+01 3.160e+01 1.674
radius:yearSampled -2.189e-03 8.455e-03 -0.259
riverWest Whately Brook:yearSampled 1.122e+01 6.242e+00 1.797
radius:riverWest Whately Brook:yearSampled -2.626e-02 1.569e-02 -1.674
Pr(>|t|)
(Intercept) 0.6338
radius 0.7908
riverWest Whately Brook 0.0744 .
yearSampled 0.6330
radius:riverWest Whately Brook 0.0963 .
radius:yearSampled 0.7961
riverWest Whately Brook:yearSampled 0.0744 .
radius:riverWest Whately Brook:yearSampled 0.0962 .
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 6.2 on 148 degrees of freedom
(164 observations deleted due to missingness)
Multiple R-squared: 0.9074, Adjusted R-squared: 0.903
F-statistic: 207.2 on 7 and 148 DF, p-value: < 2.2e-16
Little difference between Standard Error and the intercept.
R Sqared value did not change between General Linear Model and General Additive Models.
Interpretation
- Generalized Linear Model
5.5.2 Mixed Effects Model
Generalized linear mixed model fit by maximum likelihood (Laplace
Approximation) [glmerMod]
Family: Gamma ( log )
Formula: forkLength ~ radius + (1 | yearSampled) + (1 | river)
Data: streamFishOtolithKey
AIC BIC logLik deviance df.resid
2023.1 2041.7 -1006.5 2013.1 304
Scaled residuals:
Min 1Q Median 3Q Max
-2.43511 -0.69850 -0.08442 0.67797 3.01237
Random effects:
Groups Name Variance Std.Dev.
river (Intercept) 0.0002817 0.01678
yearSampled (Intercept) 0.0007034 0.02652
Residual 0.0220464 0.14848
Number of obs: 309, groups: river, 5; yearSampled, 2
Fixed effects:
Estimate Std. Error t value Pr(>|z|)
(Intercept) 2.917e+00 5.619e-02 51.91 <2e-16 ***
radius 2.381e-03 5.461e-05 43.60 <2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Correlation of Fixed Effects:
(Intr)
radius -0.339
optimizer (Nelder_Mead) convergence code: 0 (OK)
Model failed to converge with max|grad| = 0.00560503 (tol = 0.002, component 1)
Model is nearly unidentifiable: very large eigenvalue
- Rescale variables?
Model is nearly unidentifiable: large eigenvalue ratio
- Rescale variables?
R2m R2c
delta 0.8833392 0.8883292
lognormal 0.8844122 0.8894082
trigamma 0.8822452 0.8872290
# Intraclass Correlation Coefficient
Adjusted ICC: 0.043
Unadjusted ICC: 0.005
Generalized linear mixed model fit by maximum likelihood (Laplace
Approximation) [glmerMod]
Family: Gamma ( log )
Formula: forkLength ~ radius + (1 | river)
Data: streamFishOtolithKey
AIC BIC logLik deviance df.resid
2044 2059 -1018 2036 305
Scaled residuals:
Min 1Q Median 3Q Max
-2.3189 -0.7145 -0.1843 0.6584 2.7865
Random effects:
Groups Name Variance Std.Dev.
river (Intercept) 0.0004284 0.0207
Residual 0.0240138 0.1550
Number of obs: 309, groups: river, 5
Fixed effects:
Estimate Std. Error t value Pr(>|z|)
(Intercept) 2.880e+00 2.560e-02 112.50 <2e-16 ***
radius 2.491e-03 5.218e-05 47.74 <2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Correlation of Fixed Effects:
(Intr)
radius -0.703
optimizer (Nelder_Mead) convergence code: 0 (OK)
Model failed to converge with max|grad| = 0.00829334 (tol = 0.002, component 1)
Model is nearly unidentifiable: very large eigenvalue
- Rescale variables?
Model is nearly unidentifiable: large eigenvalue ratio
- Rescale variables?
R2m R2c
delta 0.8864589 0.8884489
lognormal 0.8876291 0.8896217
trigamma 0.8852637 0.8872510
- Both mixed models show minimal variance due to the random effects associated with each. This observation is clear when comparing the small residual values: 2.181 to 39.366.
5.5.3 Generalized Additive Model (GAM)
Family: gaussian
Link function: identity
Formula:
forkLength ~ s(radius)
Parametric coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 46.6887 0.3385 137.9 <2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Approximate significance of smooth terms:
edf Ref.df F p-value
s(radius) 6.491 7.647 441.2 <2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
R-sq.(adj) = 0.916 Deviance explained = 91.8%
GCV = 36.276 Scale est. = 35.397 n = 309